return {
    {
        "nvim-tree/nvim-tree.lua",
        dependencies = { "nvim-tree/nvim-web-devicons" },

        keys = {
            { "<A-m>",      "<cmd>NvimTreeToggle<cr>",   desc = "NvimTreeToggle" },
            { "<leader>tf", "<cmd>NvimTreeFindFile<cr>", desc = "NvimTreeFindFile" },
        },

        config = function()
            local has_project = pcall(require, "project_nvim");
            require("nvim-tree").setup {
                -- 不显示 git 状态图标
                git = {
                    enable = false,
                },
                -- project plugin 需要这样设置
                -- 根据是否有 project plugin 动态设置
                update_cwd = has_project,
                update_focused_file = {
                    enable = true,
                    update_cwd = has_project,
                },

                -- 隐藏 .文件 和 node_modules 文件夹
                filters = {
                    dotfiles = true,
                    custom = { 'node_modules' },
                },

                require("nvim-tree").setup {
                    view = {
                        -- 宽度
                        width = 40,
                        -- 也可以 'right'
                        side = 'left',
                        -- 隐藏根目录
                        --hide_root_folder = false,
                        -- 自定义列表中快捷键
                        --mappings = {
                        --custom_only = false,
                        --list = list_keys,
                        --},
                        -- 不显示行数
                        number = false,
                        relativenumber = false,
                        -- 显示图标
                        signcolumn = 'yes',
                    },
                },
            }
        end,
    }
}
